Distributing media content via media channels based on associated content being provided over other media channels

ABSTRACT

Systems and methods are disclosed for providing access to media content via a media channel based on associated content being provided over a different channel. In some aspects, it is determined that a media identifier corresponds to media content provided over a first media channel. In response to the determination, a notification facilitation system can identify multiple computing devices that have been configured to receive additional media content that is associated with the media content provided over the first media channel. The notification facilitation system can provide access to the additional media content via a second media channel by the identified computing devices in response to identifying the plurality of computing devices.

TECHNICAL FIELD

This disclosure relates generally to computer-implemented methods andsystems and more particularly relates to distributing or otherwiseproviding access to media content via a media channel based onassociated content being provided over a different media channel.

BACKGROUND

Media providers provide or otherwise manage access to media contentchannels. For example, a user may have a subscription to a cabletelevision provider or other multi-channel media provider. Thesubscription allows a user to access multiple channels of media contentfrom different media providers (e.g., a news channel, a cooking channel,a movie channel, etc.) via the cable television provider. Some providersof media content may provide access to media content over the Internetin addition to providing televised content. For example, a newsorganization may broadcast news programs over a cable television channeland provide access to the same or similar news programs via the newsorganization's website.

Users may simultaneously access media content via different mediachannels. For example, a user may browse the Internet on a laptopcomputer while also viewing television programming on a television.Advertisers and other content providers may wish to maximize views ofadvertisements and other media content on different devices.

It is therefore desirable to facilitate the simultaneous provision ofrelated or associated items of media content over different mediachannels.

SUMMARY

According to certain aspects, a notification facilitation system canprovide access to media content via a media channel (e.g., a websiteaccessed by a computing device) based on associated content beingprovided over a different channel (e.g., a cable television channel).For example, the notification facilitation system can determine that amedia identifier corresponds to media content that is being provided viaa first media channel. Based on determining the correspondence betweenthe media identifier and the media content provided over the first mediachannel, the notification facilitation system can identify multiplecomputing devices that have been configured to receive additional mediacontent that is associated with the first media content. Thenotification facilitation system can provide access to the additionalmedia content by the identified computing devices via a second mediachannel.

These illustrative aspects are mentioned not to limit or define thedisclosure, but to provide examples to aid understanding thereof.Additional aspects and examples are discussed in the DetailedDescription, and further description is provided there.

BRIEF DESCRIPTION OF THE FIGURES

These and other features, embodiments, and advantages of the presentdisclosure are better understood when the following Detailed Descriptionis read with reference to the accompanying drawings, where:

FIG. 1 is a block diagram that depicts an example of a system fordetecting specified media content being provided over a first mediachannel and facilitating the provision of associated media content overa second media channel according to certain aspects;

FIG. 2 is a modeling diagram that depicts an example of a notificationfacilitation system of FIG. 1 providing primary media data to adetection system for detecting specified primary media content accordingto certain aspects;

FIG. 3 is a modeling diagram that depicts an example of the detectionsystem of FIGS. 1 and 2 detecting the specified primary media contentaccording to certain aspects;

FIG. 4 is a modeling diagram that depicts an example of the detectionsystem of FIGS. 1-3 providing a detection event that describes thedetected primary media content to the notification facilitation systemaccording to certain aspects;

FIG. 5 is a modeling diagram that depicts an example of the notificationfacilitation system of FIGS. 1-4 providing secondary media data to acomputing device that can be used to retrieve secondary media contentfrom a secondary media provider according to certain aspects;

FIG. 6 is a flow chart illustrating an example of a method for providingaccess to media content via a media channel based on associated contentbeing provided over a different media channel according to certainaspects;

FIG. 7 is a modeling diagram that depicts an example of a computingdevice detecting primary media content presented by a media device thatis near the computing device according to certain aspects;

FIG. 8 is a modeling diagram that depicts an example of a detectionsystem providing a detection event that describes the detected primarymedia content to the computing device of FIG. 7 according to certainaspects;

FIG. 9 is a modeling diagram that depicts the computing device of FIG. 7providing the detection event of FIG. 8 to a notification facilitationsystem according to certain aspects;

FIG. 10 is a modeling diagram that depicts an example of thenotification facilitation system of FIG. 9 providing secondary mediadata to the computing device of FIG. 7 that can be used to retrievesecondary media content from a secondary media provider according tocertain aspects; and

FIG. 11 is a block diagram that depicts example systems for implementingcertain aspects.

DETAILED DESCRIPTION

Computer-implemented systems and methods are disclosed for distributingor otherwise providing access to media content via a media channel basedon associated content being provided over a different media channel. Forexample, a server system may determine that advertising content is beingtransmitted via a cable television channel and instruct a computingdevice to access other advertising content over the Internet that isrelated to the advertising content being transmitted via the cabletelevision channel. Thus, if a user views the cable television channelon a television while also browsing the Internet with the computingdevice, related advertising content may simultaneously displayed on boththe television screen and the computer screen.

In accordance with some aspects, a notification facilitation system candetermine that a media identifier corresponds to media content that isbeing provided via a first media channel. In one non-limiting example, anotification facilitation system determines the correspondence based onreceiving an electronic communication indicative of the correspondencefrom a remote computing system. For instance, the remote computingsystem may execute an automatic content recognition process foranalyzing media content provided via the first media channel anddetermining that a fingerprint of the media content matches a referencefingerprint. In another non-limiting example, the notificationfacilitation system can perform the automatic content recognitionprocess. Based on the correspondence between the media identifier andthe media content provided over the first media channel, thenotification facilitation system can identify multiple computing devicesthat have been configured to receive additional media content that isassociated with the first media content. In a non-limiting example, thenotification facilitation system may determine that advertising contentbeing transmitted via a cable television channel corresponds to areference fingerprint and may identify computing devices that areconfigured to receive related advertising content over the Internet. Thenotification facilitation system can provide access to the additionalmedia content via a second media channel by the identified computingdevices in response to identifying the plurality of computing devices.In some aspects, providing access to the additional media content caninvolve transmitting information to the identified computing devicesthat can be used to retrieve the additional media content (e.g., auniform resource locator (“URL”)). A media application executed at acomputing device can retrieve and execute the additional media content.In additional or alternative aspects, providing access to the additionalmedia content can involve transmitting the additional media content tothe computing devices.

As used herein, the term “media content” is used to refer to electroniccontent that is transmitted by a media provider over a media channel.Non-limiting examples of media content can include image content, videocontent, audio content, textual content, or some combination thereof.For example, media content can include online advertising content thatis streamed or otherwise provided from a website to a computing device.

As used herein, the term “media identifier” is used to refer to datathat is used to uniquely identify or otherwise reference specificcontent provided by a media provider. Non-limiting examples of mediaidentifiers include video or audio fingerprints, watermarks,alphanumeric identifiers, etc.

As used herein, the term “media channel” is used to refer to any mannerof delivering media content to a computing device or other media device(e.g., a television). In one non-limiting example, a media channel maybe a television channel. In another non-limiting example, a mediachannel may be a website hosted by a provider of media content, such asa website that provides online access to news programs that are alsoprovided over a television channel. In another non-limiting example, amedia channel may be a section of a website that is used to host contentby a specific media content provider. For example, a cable televisionprovider may host a website that includes a first section for contentprovided by a news channel, a second section for content provided by amovie channel, etc.

As used herein, the term “media provider” is used to refer to an entityor service that can provide electronic media content over one or moremedia channels. Non-limiting examples of electronic media contentinclude video content, audio content, etc. In some aspects, the mediaprovider may provide access to multiple media channels over differenttypes of communication networks. For example, a cable televisionprovider may provide televised media content that is accessible via acable television channel and online media content that is accessible viaa website.

As used herein, the term “media application” is used to refer to anyapplication that can be used to display, execute, or otherwise use mediacontent provided via a media channel. In some aspects, a mediaapplication can access media content over different channels. Forexample, a web browser application may access media content fromdifferent channels over different websites. In additional or alternativeaspects, a media application can be an application that is designed foraccessing media content over specific channels. In a non-limitingexample, a provider of online video content (e.g., a news website) mayprovide an application (e.g., “NewsTV”) that can be installed on acomputing device and used specifically to access video content from onlythat provider. In some aspects, such a media application may be a nativeapplication that is specifically configured to access content from agiven media channel and, unlike a web browser, may be unable to accesscontent from other media channels.

Referring now to the drawings, FIG. 1 is a block diagram that depicts anexample of a system for detecting specified media content being providedover a first media channel and facilitating the provision of associatedmedia content over a second media channel. The system depicted in FIG. 1can include a notification facilitation system 102 that can communicatewith one or more primary media providers 110, a detection system 112,one or more computing devices 114, and one or more secondary mediaproviders 116. The various systems and devices depicted in FIG. 1 cancommunicate data via a network 118 such as the Internet or othersuitable data network.

As used herein, the terms “primary media content” and “primary mediaprovider” are used to refer to media content transmitted over amonitored media channel and an entity providing the transmitted mediacontent, respectively. The terms “secondary media content” and“secondary media provider” are used to refer to additional media contenttransmitted over an additional media channel in response to a detectionof primary media content being transmitted over the monitored mediachannel and an entity providing the additional media content,respectively. A non-limiting example of primary and/or secondary mediacontent is advertising content. Although FIG. 1 depicts the primarymedia provider 110 and the secondary media provider 116 as separatefunctional blocks, other implementations are possible. For example, thesame media provider may transmit both primary content over a first mediachannel (e.g., a television channel) and secondary content over a secondmedia channel (e.g., an Internet connection).

The notification facilitation system 102 can facilitate the delivery ofsecondary media content to the computing device 114 via a media channelof the network 118 (e.g., an Internet connection) simultaneously or nearsimultaneously with primary content being transmitted over a mediachannel of the network 124 (e.g. a television channel). In some aspects,the notification facilitation system 102 can include a server system ora group of server systems configured for cloud computing. Non-limitingexamples of a computing device 114 include a laptop computer, a tabletcomputer, a smart phone, or any other suitable device that can execute amedia application 120 for executing, displaying, or otherwise usingmedia content from the secondary media provider 116. As describedherein, the secondary media content from the secondary media provider116 can be selected based on the secondary media content being relatedto or otherwise associated with primary media content that can beprovided to a media device 126 via another media channel (e.g., a cabletelevision connection) of the network 124.

The performance of this selection can be at least partially automatedsuch that access to the secondary media content can be providedsimultaneously or nearly simultaneously with at least some of theprimary content being transmitted over a media channel of the network124. Providing secondary media content simultaneously or nearlysimultaneously with at least some of the primary content beingtransmitted over a media channel of the network 124 can allow relatedcontent accessible via different types of media channels to be presentedsimultaneously on different types of devices.

The notification facilitation system 102 can include one or moreprocessing devices that execute program instructions for facilitatingthe delivery of secondary media content to the computing device 114. Theprogram instructions stored at or accessible by the notificationfacilitation system 102 can include one or more software modules. Forexample, FIG. 1 depicts a matching module 104, a mapping module 106, anda notification module 108. The matching module 104, the mapping module106, and the notification module 108 can be used to generate andcommunicate data with other systems accessible via the network 118.Although FIG. 1 depicts the matching module 104, the mapping module 106,and the notification module 108 as separate modules for illustrativepurposes, other implementations are possible. For example, one or morefunctions performed by the matching module 104, the mapping module 106,and the notification module 108 may be performed by a common module,application, or other set of program instructions.

The notification facilitation system 102 can also include one or morenon-transitory computer-readable media for storing primary media data105, secondary media data 107, and subscription data 109. The primarymedia data 105, the secondary media data 107, and/or the subscriptiondata 109 can be stored as databases or other suitable data structures.

The primary media data 105 can include media identifiers that can beused for referencing different primary media content provided by theprimary media provider 110. A media identifier can be any data that canuniquely identify or otherwise reference specific media content providedby the primary media provider 110. Non-limiting examples of these mediaidentifiers include video or audio fingerprints, watermarks, etc.

The matching module 104 can be used to add data to and retrieve datafrom the primary media data 105. For example, a management interface canbe presented at the notification facilitation system 102 or a computingdevice in communication with the notification facilitation system 102.The management interface can be used for adding data to the primarymedia data 105. For example, the management interface can be used toupload or otherwise identify primary media content to the notificationfacilitation system 102. The matching module 104 or another suitablemodule executed by the notification facilitation system 102 can assign,generate, or otherwise obtain a media identifier for the primary mediacontent that is uploaded or otherwise identified using the managementinterface.

In a non-limiting example, a fingerprinting module can generatereference fingerprints from a media content. The fingerprinting modulecan be notified of media content (e.g., videos) to be fingerprinted froma queue managed by a management module of the notification facilitationsystem 102. The fingerprinting module can download or otherwise accessthe media content identified in the queue. The fingerprinting module cangenerate a reference fingerprint (e.g., an audio fingerprint) that canbe used by the detection application 113 (e.g., a fingerprint generatedusing a selected automatic content recognition technology). The matchingmodule 104 can store the generated fingerprint in the primary media data105. In some aspects, the generated fingerprint can be associated withidentifiers for one or more secondary media content items (e.g., anidentifier for one or more advertising campaigns).

The secondary media data 107 can include data that can be used torequest, retrieve, or otherwise obtain specific secondary media contentitems from the secondary media provider 116. Non-limiting examples ofthe secondary media data 107 include one or more of an identifier of anadvertisement or other secondary media content item, account informationfor a secondary media provider 116 that provides secondary mediacontent, visual characteristics of secondary media content items (e.g.,width, height, etc.), a type of application programming interface usedto access the advertisement or other secondary media content item (e.g.,Open Rich Media Mobile Advertising (“ORMMA”), Mobile Rich Media AdInterface Definitions (“MRAID”), etc.).

The mapping module 106 can be used to add data to and retrieve data fromthe secondary media data 107. For example, a management interface can bepresented at the notification facilitation system 102 or a computingdevice in communication with the notification facilitation system 102.The management interface can be used for accessing the mapping module106 and thereby adding data to the secondary media data 107.

The subscription data 109 can include data describing or otherwiseidentifying account information used by computing devices 114 to accessthe notification facilitation system 102. The subscription data 109 canbe used by the notification module 108 to determine whether to transmit(or facilitate the transmission of) secondary media content to a givencomputing device 114. Non-limiting examples of account information mayinclude one or more of an identifier for the computing device 114 (e.g.,a network address, a hardware identifier, etc.), an identifier for auser of a computing device 114 (e.g., a user name, an account number,etc.), hardware characteristics of the computing device 114 (e.g.,device type, screen size, etc.), an application type for the mediaapplication 120 or a type of primary media content accessed by the mediaapplication 120, an identifier of a secondary media provider 116 fromwhich the media application 120 receives secondary media content, etc.The notification module 108 can also be used to add data to and retrievedata from the subscription data 109. For example, a management interfacecan be presented at the notification facilitation system 102 or acomputing device in communication with the notification facilitationsystem 102.

The primary media provider 110 can include any system or group ofsystems that is programmed or otherwise configured for providing primarymedia content via one or more of the networks 118, 124. For example, theprimary media provider 110 can be a cable news channel or other providerof televised content. The primary media provider 110 can provideprogramming over a cable television network 124 and provide the same ordifferent programming over a data network 118, such as the Internet.Although FIG. 1 depicts separate networks 118, 124 for illustrativepurposes, other implementations are possible. In additional oralternative aspects, the primary media provider 110 may providedifferent types of media content via different media channels of thesame network. For example, the primary media provider 110 may providedifferent types of media content via different media channels over anetwork 118 such as the Internet to both the computing device 114 andthe media device 126 (e.g., another computing device, a televisionconfigured to communicate via the Internet, etc.).

The detection system 112 can include any system or group of systems thatis programmed or otherwise configured for executing a detectionapplication 113. The detection application 113 can monitor and detectprimary media content provided over a media channel of the network 124by the primary media provider 110. As described in detail herein, thedetection application 113 can perform one or more operations thatidentify primary media content in this media channel that matches one ormore fingerprints, watermarks, or other suitable media identifiers. Thedetection application 113 can provide data to the notificationfacilitation system 102 that describes the identified primary mediacontent. In some aspects, the notification facilitation system 102 canrespond to receiving this data from the detection system 112 byproviding secondary media data to the computing device 114. Thecomputing device can use the provided secondary media data (e.g., anidentifier of an advertisement) to retrieve secondary media content(e.g., a video advertisement, a banner advertisement, etc.) from thesecondary media provider 116. In additional or alternative aspects, thenotification facilitation system 102 can respond to receiving the datafrom the detection system 112 by providing the secondary media contentto the computing device 114 without the computing device 114 having toretrieve the secondary media content from the secondary media provider116.

Although FIG. 1 depicts the notification facilitation system 102 anddetection system 112 as separate systems for illustrative purposes,other implementations are possible. For example, in some aspects, thesame computing system or group of computing systems can perform one ormore functions of both the notification facilitation system 102 and thedetection system 112. Such a computing system or group of computingsystems can execute program instructions for performing one or morefunctions of the matching module 104, the mapping module 106, thenotification module 108, the detection application 113, or somecombination thereof.

The secondary media provider 116 can include any system or group ofsystems that is programmed or otherwise configured for providing primarymedia content via the network 118. In a non-limiting example, thesecondary media provider 116 can provide online advertising content tothe computing device over the Internet. Although FIG. 1 depicts thenotification facilitation system 102 and the secondary media provider116 as separate functional blocks for illustrative purposes, otherimplementations are possible. For example, in additional or alternativeaspects, the same computing system or group of computing systems canperform one or more functions of both the notification facilitationsystem 102 and the secondary media provider 116.

For aspects in which the notification facilitation system 102 anddetection system 112 are separate systems, the notification facilitationsystem 102 can provide data to the detection system 112 that identifiesthe primary media content for which the detection system 112 shouldmonitor the network 124. For example, FIG. 2 is a modeling diagram thatdepicts the notification facilitation system 102 providing primary mediadata to the detection system 112. The primary media data can include oneor more primary media records 202. For example, the matching module 104can retrieve primary media records 202 from the primary media data 105and electronically transmit the primary media records 202 in a databaseor other suitable data structure to the detection application 113 via adata network 118.

In some aspects, each of the media records can include a recordidentifier 204 and at least one media identifier 206, as depicted inFIG. 2. The record identifier 204 can be an alphabetical, numeric, oralphanumeric string that can be used by the notification facilitationsystem 102 to uniquely identify different media fingerprints or othermedia identifiers in a database or other data structure. The mediaidentifier 206 can be a fingerprint, watermark, or other data that thedetection application 113 can use to identify specific primary mediacontent. In response to identifying this primary media content, thedetection application 113 can notify the notification facilitationsystem 102 that the primary media content has been detected bytransmitting a message with the record identifier 204 to the matchingmodule 104 via the data network 118. In additional or alternativeaspects, each of the media records 202 can include a record identifier204 and the media content or a portion thereof for which the detectionapplication 113 is to monitor a media channel. For example, a mediarecord 202 can include a video and a unique identifier for the video.The detection application 113 can execute one or more processes thatgenerate a media identifier for the video (e.g., a fingerprint). Thedetection application 113 can use the generated media identifier tomonitor the media channel.

The detection system 112 can monitor one or more media channels todetect or otherwise identify primary media content being provided by theprimary media provider 110 over a monitored media channel. For example,FIG. 3 is a modeling diagram that depicts an example of the detectionsystem 112 detecting primary media content. The detection system 112 canbe communicatively coupled to the primary media provider 110 via thenetwork 124 (e.g., a cable television network). The detection system 112can receive primary media content 302 from the primary media provider110 via the network 124. One or more processing devices of the detectionsystem 112 can execute the detection application 113 to compare thereceived primary media content 302 to one or more of the mediaidentifiers 206 received from the notification facilitation system 102.

If the detection system 112 determines that the media content 302matches or otherwise corresponds to a media identifier 206, thedetection system 112 can generate a detection event 402 and transmit thedetection event 402 to the notification facilitation system 102, asdepicted in FIG. 4. The detection event 402 can be transmitted using anysuitable electronic communication, such as (but not limited to) aHypertext Transfer Protocol (“HTTP”) message. The detection event 402can describe or otherwise identify the detected primary media content302. For example, the detection event 402 depicted in FIG. 4 includes arecord identifier 204 retrieved from a primary media record 202 (whichthe notification facilitation system 102 previously provided to thedetection system 112) and a provider identifier 404 that identifies theprimary media provider 110 from which the media content 302 was received(e.g., a television channel used to transmit the media content 302).

The notification facilitation system 102 can determine from thedetection event 402 that specific primary media content has been or isbeing provided via a monitored media channel by a specific primary mediaprovider 110. The matching module 104 can use the record identifier 204to access a media identifier for the primary media content from theprimary media data 105. The matching module 104 can use the provideridentifier 404 received from the detection system 112 to identify theprimary media provider 110 that is providing (or that has provided) theprimary media content.

The notification facilitation system 102 can respond to receiving thedetection event 402 by providing secondary media data to the computingdevice 114, as depicted in FIG. 5. The matching module 104 can provide anotification command 502 to the notification module 108 to identify oneor more computing devices 114 that are to receive secondary media datathat includes (or can be used to retrieve) secondary media content thatrelates to or is otherwise associated with the detected primary mediacontent 302.

The notification module 108 can access the subscription data 109 todetermine that the computing device 114 uses a media application 120configured for executing or otherwise using the detected primary mediacontent 302. For example, the provider identifier 404 may identify aprimary media provider 110 such as “NewsTV.” A record in thesubscription data 109 may indicate that a given computing device 114 hasa media application 120 such as “NewsTV Mobile” that is used to accessmedia content from the primary media provider 110. The notificationmodule 108 can thus determine that secondary media data is to beprovided to the computing device 114 identified in the subscription data109.

The notification module 108 can request secondary media data from themapping module 106. For example, the mapping module 106 can receive theprovider identifier 404 from the matching module 104 or the notificationmodule 108 and can receive information about the computing device 114(e.g., device type, screen size, etc.) from the notification module 108.The mapping module 106 can retrieve, generate, or otherwise obtainsecondary media data 504 based on the provider identifier 404 and theinformation about the computing device 114. For example, the mappingmodule 106 can retrieve an identifier for a secondary content item(e.g., a marketing campaign, an advertisement identifier, etc.) that isassociated with the primary media provider 110 or the detected mediacontent 302 and that can be displayed on the computing device 114 (e.g.,an advertisement having dimensions smaller than the screen). The mappingmodule 106 can also retrieve data describing the application programminginterface used to access the secondary media content item (e.g., ORMMA,MRAID, etc.).

The mapping module 106 can provide secondary media data 504 to thenotification module 108 that includes the retrieved information aboutthe secondary content item. The notification module 108 can transmit anelectronic message that includes secondary media data 504′ via the datanetwork 118 to a client notification module 122 executed at thecomputing device 114. The secondary media data 504′ can include at leastsome of the secondary media data 504. For example, the secondary mediadata 504′ can be a URL or other network address for secondary mediacontent hosted by the secondary media provider 116. The clientnotification module 122 executed at the computing device 114 cantransmit a request 506 for the secondary media content via the datanetwork 118 to the secondary media provider 116. The request 506 caninclude secondary media data 504″ that includes at least some of thesecondary media data 504′ received by the computing device 114 from thenotification facilitation system 102.

The secondary media provider 116 can respond to the request 506 bytransmitting the requested secondary media content 508 to the computingdevice 114 via the data network 118. The media application 120 executedat the computing device 114 can display, execute, or otherwise use thesecondary media content 508 received from the secondary media provider116.

In some aspects, the secondary media data 504 can include informationthat the client notification module 122 can use to request the secondarymedia content, as described above with respect to FIG. 5. In additionalor alternative aspects, the secondary media data 504 can include thesecondary media content. For example, the notification facilitationsystem 102 can provide an advertisement or other secondary media contentdirectly to the computing device 114 without the computing device 114having to transmit a separate request to the second media provider 116.

FIG. 6 is a flow chart illustrating an example of a method 600 forproviding access to media content via a media channel based onassociated content being provided over a different media channel. Forillustrative purposes, the method 600 is described with reference to theimplementation depicted in FIGS. 1-5. Other implementations, however,are possible.

The method 600 involves determining that a media identifier correspondsto first media content that is being provided via a first media channel,as depicted in block 610. For example, a suitable processing device canexecute a detection application 113 that analyzes at least some of themedia content 302 provided over a monitored media channel. The detectionapplication 113 can obtain a media identifier from the media content302. The detection application 113 can also retrieve a stored mediaidentifier from a database or other suitable data structure that isstored on a non-transitory computer-readable medium or is accessible viaa data network. The detection application 113 can compare the mediaidentifier obtained from the media content with the stored mediaidentifier. The detection application 113 can determine that the mediaidentifier corresponds to media content provided via the first mediachannel based on the media identifiers at least partially matching oneanother.

In some aspects, determining that a media identifier corresponds tomedia content 302 can additionally or alternatively involve receiving,via a data network, an electronic communication indicating that a remotecomputing system has identified a correspondence between the first mediacontent and the media identifier. For example, the detection application113 can be executed on a detection system 112 that is accessible over adata network by the notification facilitation system 102. The detectionapplication 113 can compare a media identifier obtained from the mediacontent 302 with a stored media identifier to determine that the mediaidentifiers at least partially match one another. The detection system112 can execute the detection application 113 to generate a detectionevent 402 or other electronic message that identifies the match betweenmedia identifiers, as described above with respect to FIG. 4. Thedetection application 113 can transmit the detection event 402 or otherelectronic message to the notification facilitation system 102 via thedata network 118. The notification facilitation system 102 can determinefrom the received message that the media content 302 corresponding to amedia identifier from the primary media data 105 is being provided overthe first media channel. In additional or alternative aspects, thedetection application 113 can be executed by the notificationfacilitation system 102 rather than a remote computing system.

In some aspects in which a remote computing system (e.g., the detectionsystem 112) executes the detection application 113, the notificationfacilitation system 102 can provide one or more media identifiers to theremote computing system that are used by the remote computing system tomonitor media content over the media channel. For example, thenotification facilitation system 102 can execute the matching module 104to generate, retrieve, or otherwise obtain one or more media identifiersto be used by a remote detection system 112. The notificationfacilitation system 102 can transmit one or more electroniccommunications to the detection system 112 that include the mediaidentifiers obtained by the matching module 104, as described above withrespect to FIG. 2. The detection system 112 can receive the electroniccommunications over the data network. The detection system 112 can usethe media identifiers from the received electronic communications tomonitor media content 302 transmitted by the primary media provider 110via the network 124.

In additional or alternative aspects, one or more processing devices ofthe notification facilitation system 102 can execute programinstructions that generate the media identifiers used by the detectionapplication 113. For example, these program instructions can include afingerprinting module. Executing the program instructions can generate areference fingerprint (e.g., an audio fingerprint, a video fingerprint,or some combination thereof) from media content (e.g., an audio stream,a video stream, or some combination thereof) that is to be provided bythe primary media provider 110. The processing device of thenotification facilitation system 102 can store the generated referencefingerprint or other media identifier in a database or other suitabledata structure. The stored reference fingerprint or other mediaidentifier can be indexed in the database or other suitable datastructure by an identifier for an advertisement or other media contentprovided by the primary media provider 110.

In additional or alternative aspects, the matching module 104 candetermine that media content 302 identified by a remote computing systemis included in a set of primary media data 105 tracked by thenotification facilitation system 102. In one non-limiting example, thenotification facilitation system 102 may delete a given media identifierfrom the primary media data 105 or otherwise modify the primary mediadata 105 to indicate that the given media identifier should no longer betracked. The notification facilitation system 102 can subsequentlyreceive a detection event 402 indicating that the detection application113 has identified media content 302 that corresponds to a mediaidentifier. The notification facilitation system 102 can execute thematching module 104 to determine if the media identifier that isidentifiable from the detection event 402 is the deleted or inactivemedia identifier. If the media identifier that is identifiable from thedetection event 402 is the deleted or inactive media identifier, aprocessing device of the notification facilitation system 102 canterminate the method 600. If the media identifier is an active mediaidentifier that is being tracked by the notification facilitation system102, the method 600 can continue.

The method 600 also involves identifying computing devices that havebeen configured to receive second media content that is associated withthe first media content provided over the first media channel, asdepicted in block 620. For example, one or more processing devices ofthe notification facilitation system 102 can execute the notificationmodule 108 to identify the computing devices 114 configured to thereceive related or otherwise associated media content. The notificationmodule 108 can reference the subscription data 109 to determine whichcomputing devices 114 are to receive the additional media content.

In some aspects, the notification module 108 can identify the computingdevices 114 that have been configured to receive the second mediacontent based on a type of media application 120 installed on thecomputing devices 114. For example, the primary media provider 110 maybe an entity that provides news programming (e.g., “NewsTV”) over both acable network 124 (e.g., a “NewsTV” cable channel) and a data network118 (e.g., a “NewsTV” website). The notification module 108 candetermine from the subscription data 109 that one or more computingdevices 114 executes a media application 120 that is configured toreceive content from the primary media provider 110 via the network 118.In one non-limiting example, the media application 120 may be anapplication that is specifically configured to access content from theprimary media provider 110 (e.g., a “NewsTV” mobile application) and maybe unable to access content from other media providers. The subscriptiondata 109 may include a record for a computing device 114 that indicatesthat the “NewsTV” mobile application is installed on the computingdevice 114. The notification module 108 can identify the computingdevice 114 as being configured to receive the second media content basedon the “NewsTV” mobile application being installed on the computingdevice 114.

In additional or alternative aspects, the notification module 108 canidentify the computing devices 114 configured to receive the secondmedia content based on receiving a notification from a computing device114 that the media application 120 is accessing content from the primarymedia provider 110. For example, if the primary media provider 110 is anentity that provides news programming (e.g., “NewsTV”) over both a cablenetwork 124 (e.g., a “NewsTV” cable channel) and a data network 118(e.g., a “NewsTV” website), a client notification module 122 executed atthe computing device 114 may monitor the media application 120 todetermine if the media application 120 is accessing content from theprimary media provider 110. If the media application 120 is accessingcontent from the primary media provider 110, the client notificationmodule 122 can transmit an electronic communication to the notificationmodule 108 via the data network 118 indicating that the mediaapplication 120 is accessing content from the primary media provider110. The notification facilitation system 102 can identify the computingdevice as being configured to receive second media content based onreceiving the notification from the client notification module 122. Inone non-limiting example, the media application 120 may be anapplication that is specifically configured to access content from theprimary media provider 110 (e.g., a “NewsTV” mobile application) and maybe unable to access content from other media providers. The clientnotification module 122 can transmit a notification to the notificationfacilitation system 102 in response to a user activating the mediaapplication 120 (e.g., turning on the media application, switching anactive window to the media application, etc.). In another non-limitingexample, the media application 120 may be a web browser or otherapplication that can access a website of the primary media provider 110.The client notification module 122 can transmit an electroniccommunication to the notification facilitation system 102 indicatingthat the web browser accessing the website of the primary media provider110.

The method 600 also involves providing access to the second mediacontent via a second media channel by the identified computing devices,as depicted in block 630. One or more processing devices of thenotification facilitation system 102 can execute the notification module108 to provide access to the second media content by the identifiedcomputing devices 114 via a media channel of the network 118. In someaspects, providing access to the second media content can involvegenerating and transmitting secondary media data 504 to the identifiedclient devices 114 via the data network 118, as described above withrespect to FIG. 5. The secondary media data 504 can be used by theclient computing devices 114 to retrieve secondary media content from asecondary media provider 116, as described above with respect to FIG. 5.In additional or alternative aspects, providing access to the associatedmedia content can involve the notification facilitation system 102transmitting the secondary media content to the identified clientdevices 114 via the data network 118.

The notification facilitation system 102 can execute the mapping module106 to identify the secondary media content to which the computingdevices 114 are to be provided access. In some aspects, the mappingmodule 106 may identify the media content based on a type of mediacontent that can be executed, displayed, or otherwise outputted by agiven computing device 114. For example, the subscription data 109 mayindicate that the computing device 114 has a video player applicationthat is configured to play specific types of video content. The mappingmodule 106 may generate secondary media data 504 that can be used by thecomputing device 114 to retrieve secondary content (e.g., videoadvertisements) that are compatible with the video player of thecomputing device 114.

In additional or alternative aspects, the mapping module 106 mayidentify the media content based on a hardware characteristic of thecomputing device 114. A non-limiting example of a hardwarecharacteristic of the computing device 114 include one or moredimensions (e.g., height, width) of a display screen that is included inor communicatively coupled to the computing device 114. For instance,the subscription data 109 may indicate that the computing device 114 hasa display screen with a given set of dimensions. The mapping module 106may generate secondary media data 504 that can be used by the computingdevice 114 to retrieve secondary content items that can be fullydisplayed on a screen with the given set of dimensions (e.g., a banneradvertisement having an aspect ratio similar to the screen of thecomputing device 114). In another non-limiting example, the subscriptiondata 109 may indicate that the computing device 114 is a smart phone orother type of computing device with one or more processing constraints(e.g., less memory, slower processor, less sophisticated graphics) ascompared to a laptop or desktop computer. The mapping module 106 maygenerate secondary media data 504 that can be used by the computingdevice 114 to retrieve secondary content items that can be usedeffectively in view of these processing constraints. For example, themapping module 106 may select a banner advertisement for a firstcomputing device 114 that is a smart phone and may select a videoadvertisement for a second computing device 114 that is a laptopcomputer.

Although, for illustrative purposes, certain parameters used to select atype of media content are discussed above, any suitable parameter can beused by the mapping module 106 or other suitable program code to selectmedia content to be provided to a computing device 114. Non-limitingexamples of such suitable parameters include the identity or type ofmedia application 120 that is utilizing a client notification module 122or other software development kit, a type of integration with the mediaapplication 120 (e.g., ORMMA, MRAID, etc.), the media type of thesecondary media data 504 to be provided (e.g., HTML, video, etc.),and/or any other suitable parameter that may be added based on thedesired behavior of a system for facilitating the provision ofassociated media content over a second media channel.

In some aspects, one or more functions of the detection application 113,the matching module 104, the mapping module 106, and/or the notificationmodule 108 can be performed by a single device. For example, thenotification facilitation system 102 may be implemented using a set-topunit or other suitable device for receiving cable television channelsover a cable network 124. This set-top unit may execute softwareinstructions for performing one or more functions of the detectionapplication 113, the matching module 104, the mapping module 106, and/orthe notification module 108. The set-top unit can identify media contentbeing broadcasted via one or more of the received cable televisionchannels that corresponds to a given media identifier, as describedabove with respect to block 610. The set-top unit can identify one ormore computing devices 114 that are registered with the cablesubscription and that are configured to receive related media content,as described above with respect to block 620. The computing devices 114may be in communication with the set-top unit over a data network 118via a cable modem and/or network router that is communicatively coupledto the set-top unit. The set-top unit can provide the computing devices114 with access to the related media content, as described above withrespect to block 630. For example, the set-top unit can transmitsecondary media data 504 to the computing devices via the cable modemand/or network router.

In additional or alternative aspects, a computing device 114 can performone or more functions for monitoring primary media content provided by aprimary media provider 110. For example, FIG. 7 is a modeling diagramthat depicts an example of a computing device 114 detecting primarymedia content presented by a media device 702 near the computing device114. Non-limiting examples of a media device 702 include a television, aradio, another computing device, etc. The media device 702 can becommunicatively coupled to the primary media provider 110 via thenetwork 124. For example, a media device 702 such as television can becommunicatively coupled to a primary media provider 110 such as a cabletelevision provider via a cable network 124. The media device 702 canemit signals 704 in the vicinity of the computing device 114.Non-limiting examples of the signals 704 include sound waves (e.g., fromthe audio played by a television), light waves (e.g., from video imagesdisplayed on the television), etc.

The computing device 114 can include a receiver device 706 that canreceive the signals 704. In one non-limiting example, the receiverdevice 706 can be a microphone that can receive audio signals 704emitted by the media device 702. In another non-limiting example, thereceiver device 706 can be a camera that can capture images from lightsignals 704 emitted by the media device 702. A client notificationmodule 122 executed by the computing device 114 can receive digital data708 that represents the signals received by the receiver device 706.

In some aspects, the computing device 114 can transmit identificationdata 712 to the detection system 112 via a data network 118. In someaspects, the identification data 712 can include a media identifiergenerated from the digital data 708 received by the client notificationmodule 122. For example, a client detection module 710 can be executedby the computing device 114 that generates a fingerprint or other mediaidentifier from the digital data 708. In other aspects, theidentification data 712 can include at least a portion of the digitaldata 708 received by the client notification module 122. For example,the client detection module 710 can be executed by the computing device114 that extracts a portion of the digital data 708 and transmits theextracted digital data with the identification data 712 to the detectionapplication 113. The detection application 113 can generate afingerprint or other media identifier from the extracted digital datareceived with the identification data 712.

The detection application 113 can generate a detection event 802 andtransmit the detection event 802 to the computing device 114, asdepicted in FIG. 8. The detection event 802 can include a recordidentifier 804 and a provider identifier 806. The detection application113 can generate the detection event 802 with the record identifier 804and the provider identifier 806 in a similar manner as described abovewith respect to the detection event 402, the record identifier 204, andthe provider identifier 404 depicted in FIG. 4.

The computing device 114 can obtain secondary media data using therecord identifier 804 and the provider identifier 806. The computingdevice 114 can transmit a detection event 902 to the notificationfacilitation system 102, as depicted in FIG. 9. For example, the clientnotification module 122 can transmit the detection event 902 to thematching module 104 via the data network 118. The detection event 902can include the record identifier 804 and the provider identifier 806.The matching module 104 can respond to receiving the detection event 902by providing a notification command 1002 to the notification module 108.The matching module 104 can generate the notification command 1002 usingthe record identifier 804 and the provider identifier 806 in a similarmanner as described above with respect to the notification command 502depicted in FIG. 5. The notification module 108 can obtain secondarymedia data 1004 from the mapping module 106 and provide at least somesecondary media data 1004′ to the computing device 114 via the datanetwork 118. The notification module 108 can do so in a similar manneras described above with respect to the secondary media data 504 depictedin FIG. 5. The operations described above with respect to block 610 caninclude the notification facilitation system 102 using the detectionevent 902 to determine that a media identifier corresponds to the mediacontent being provided over a media channel by the primary mediaprovider 110.

In additional or alternative aspects, the computing device 114 maygenerate the detection event 802 without transmitting the identificationdata 712 to the detection system 112. For example, the client detectionmodule 710 can access a local database or other suitable data structurestored in a non-transitory computer-readable medium of the computingdevice 114. The local database can include reference fingerprints orother media identifiers provided from the notification facilitationsystem 102 to the computing device 114. The client detection module 710can generate a detection event 902 by determining that a mediaidentifier generated from the digital data 708 matches or otherwisecorresponds to a media stored at the computing device 114.

In additional or alternative aspects, the detection system 112 cantransmit the detection event 802 to the notification facilitation system102 rather than (or in addition to) transmitting the detection event 802to the computing device 114. The notification facilitation system 102can obtain and transmit the secondary media data 1004 to the computingdevice 114 in response to receiving the detection event 802 from thedetection system 112. The operations described above with respect toblock 610 can include the notification facilitation system 102 using thedetection event 802 to determine that a media identifier corresponds tothe media content being provided over a media channel by the primarymedia provider 110.

Any suitable computing systems can be used to implement the aspectsdescribed above. For example, FIG. 11 is a block diagram that depictsexample systems for implementing certain aspects.

The notification facilitation system 102 and the computing device 114depicted in FIG. 11 can respectively include processors 1102, 1112.Non-limiting examples of the processors 1102, 1112 include amicroprocessor, a field-programmable gate array (“FPGA”) anapplication-specific integrated circuit (“ASIC”), a state machine, orother suitable processing device. Each of the processors 1102, 1112 caninclude any number of processing devices, including one. The processors1102, 1112 can be communicatively coupled to computer-readable media,such as memory devices 1104, 1114. The processors 1102, 1112 can executecomputer-executable program instructions and/or otherwise accessinformation respectively stored in the memory devices 1104, 1114.

Each of the memory devices 1104, 1114 may be a computer-readable mediumsuch as (but not limited to) an electronic, optical, magnetic, or otherstorage device capable of providing a processor with computer-readableinstructions. Non-limiting examples of such optical, magnetic, or otherstorage devices include read-only (“ROM”) device(s), random-accessmemory (“RAM”) device(s), magnetic disk(s), magnetic tape(s) or othermagnetic storage, memory chip(s), an ASIC, configured processor(s),optical storage device(s), or any other medium from which a computerprocessor can read instructions. The instructions may compriseprocessor-specific instructions generated by a compiler and/or aninterpreter from code written in any suitable computer-programminglanguage. Non-limiting examples of suitable computer-programminglanguages include C, C++, C#, Visual Basic, Java, Python, Perl,JavaScript, ActionScript, and the like.

The notification facilitation system 102 and the computing device 114depicted in FIG. 11 respectively include buses 1106, 1116. Each of thebuses 1106, 1116 can communicatively couple one or more components of arespective one of the notification facilitation system 102 and thecomputing device 114.

Although the processors 1102, 1112, the memory devices 1104, 1114, andthe buses 1106, 1116 are respectively depicted in FIG. 11 as separatecomponents in communication with one another, other implementations arepossible. For example, the processors 1102, 1112, the memory devices1104, 1114, and the buses 1106, 1116 can be respective components ofrespective printed circuit boards or other suitable devices that can bedisposed in a notification facilitation system 102 and/or a computingdevice 114 to store and execute programming code.

The notification facilitation system 102 and computing device 114 canalso include respective communication devices 1108, 1118. Thecommunication devices 1108, 1118 can be configured to establish acommunication link 112. Non-limiting examples of the communicationdevices 1108, 1118 include Ethernet transceivers, modems, etc. Thecomputing device 114 can also include one or more input or outputdevices 1110 for receiving input or output (e.g., a keyboard, a mouse, atouchscreen, a display screen, etc.).

FIG. 11 also depicts the matching module 104, the primary media data105, the mapping module 106, the secondary media data 107, thenotification module 108, the subscription data 109, and the detectionapplication 113 stored in the memory device 1104 of the notificationfacilitation system 102. The processor 1102 can execute one or more ofthe matching module 104, the mapping module 106, the notification module108, and the detection application 113 to perform one or more operationsdescribed herein. In some aspects, one or more of the matching module104, the primary media data 105, the mapping module 106, the secondarymedia data 107, the notification module 108, the subscription data 109,and the detection application 113 can be omitted.

FIG. 11 also depicts the media application 120, the client notificationmodule 122, and the client detection module 710 stored in the memorydevice 1114 of the computing device 114. The processor 1112 can executeone or more of the client notification module 122, and the clientdetection module 710 to perform one or more operations described herein.In some aspects, one or more of the client notification module 122 andthe client detection module 710 can be omitted.

General Considerations

Numerous specific details are set forth herein to provide a thoroughunderstanding of the claimed subject matter. However, those skilled inthe art will understand that the claimed subject matter may be practicedwithout these specific details. In other instances, methods,apparatuses, or systems that would be known by one of ordinary skillhave not been described in detail so as not to obscure claimed subjectmatter.

Unless specifically stated otherwise, it is appreciated that throughoutthis specification discussions utilizing terms such as “processing,”“computing,” “calculating,” “determining,” and “identifying” or the likerefer to actions or processes of a computing device, such as one or morecomputers or a similar electronic computing device or devices, thatmanipulate or transform data represented as physical electronic ormagnetic quantities within memories, registers, or other informationstorage devices, transmission devices, or display devices of thecomputing platform.

The system or systems discussed herein are not limited to any particularhardware architecture or configuration. A computing device can includeany suitable arrangement of components that provides a resultconditioned on one or more inputs. Suitable computing devices includemultipurpose microprocessor-based computer systems accessing storedsoftware that programs or configures the computing system from a generalpurpose computing apparatus to a specialized computing apparatusimplementing one or more aspects of the present subject matter. Anysuitable programming, scripting, or other type of language orcombinations of languages may be used to implement the teachingscontained herein in software to be used in programming or configuring acomputing device.

Aspects of the methods disclosed herein may be performed in theoperation of such computing devices. The order of the blocks presentedin the examples above can be varied—for example, blocks can bere-ordered, combined, and/or broken into sub-blocks. Certain blocks orprocesses can be performed in parallel.

The use of “adapted to” or “configured to” herein is meant as open andinclusive language that does not foreclose devices adapted to orconfigured to perform additional tasks or steps. Additionally, the useof “based on” is meant to be open and inclusive, in that a process,step, calculation, or other action “based on” one or more recitedconditions or values may, in practice, be based on additional conditionsor values beyond those recited. Headings, lists, and numbering includedherein are for ease of explanation only and are not meant to belimiting.

While the present subject matter has been described in detail withrespect to specific examples thereof, it will be appreciated that thoseskilled in the art, upon attaining an understanding of the foregoing,may readily produce alterations to, variations of, and equivalents tosuch examples. Accordingly, it should be understood that the presentdisclosure has been presented for purposes of example rather thanlimitation, and does not preclude inclusion of such modifications,variations, and/or additions to the present subject matter as would bereadily apparent to one of ordinary skill in the art.

1-20. (canceled)
 21. A method for distributing media content via atleast one media channel based on associated content provided overanother media channel, comprising: making a determination, by aprocessing device, as to whether a media identifier corresponds to firstmedia content that is being provided via a first media channel, thefirst media content containing at least one of video and audio and themedia identifier being based on information of the first media content;identifying, by the processing device, when the determination is madethat the media identifier corresponds to the first media content, aplurality of computing devices that have been configured to receivesecond media content that is associated with the first media content,the second media content containing at least one of video and audio; andtransmitting the second media content toward the identified plurality ofcomputing devices via at least one second media channel.
 22. The methodof claim 21, wherein the media identifier comprises at least one of afingerprint and a watermark.
 23. The method of claim 21, wherein makingthe determination that the media identifier corresponds to the firstmedia content comprises receiving an electronic communication via a datanetwork that a remote computing system has identified a correspondencebetween the first media content and the media identifier.
 24. The methodof claim 23, further comprising transmitting the media identifier to theremote computing system prior to receiving the electronic communication.25. The method of claim 24, further comprising generating, by theprocessing device, the media identifier from the first media contentprior to the first media content being provided via the first mediachannel.
 26. The method of claim 21, further comprising identifying, foreach computing device of the plurality of computing devices, at leastone of (i) a respective type of the second media content that can beoutputted by the computing device or a (ii) a respective item of thesecond media content that can be outputted by the computing device. 27.The method of claim 26, wherein the at least one of the respective typeor the respective content item is identified based on at least onerespective hardware characteristic of the computing device.
 28. Themethod of claim 26, wherein the at least one of the respective type orthe respective content item is identified based on a respective mediaapplication employed by the computing device to output the second mediacontent.
 29. The method of claim 21, wherein first media content andsecond media content are supplied by different providers.
 30. The methodof claim 21, wherein the transmitting of the second media content to theplurality of computing devices is via a data network.
 31. A system fordistributing media content via at least one media channel based onassociated content provided over another media channel, the systemcomprising: a processing device; and a memory coupled to the processingdevice, wherein the processing device is configured to executeinstructions stored in the memory to perform operations comprising:making a determination, by the processing device, as to whether a mediaidentifier corresponds to first media content that is being provided viaa first media channel, the first media content containing at least oneof video and audio and the media identifier being based on informationof the first media content; identifying, by the processing device, whenthe determination is made that the media identifier corresponds to thefirst media content, a plurality of computing devices that have beenconfigured to receive second media content that is associated with thefirst media content, the second media content containing at least one ofvideo and audio; and causing the second media content to be transmittedtoward the identified plurality of computing devices via at least onesecond media channel.
 32. The system of claim 31, wherein the mediaidentifier comprises at least one of a fingerprint and a watermark. 33.The system of claim 31, wherein making the determination that the mediaidentifier corresponds to the first media content comprises receiving anelectronic communication via a data network that a remote computingsystem has identified a correspondence between the first media contentand the media identifier.
 34. The system of claim 33, wherein theprocessing device is further configured to execute instructions storedin the memory to perform operations comprising: generating the mediaidentifier from the first media content prior to the first media contentbeing provided via the first media channel; and transmitting thegenerated media identifier to the remote computing system.
 35. Thesystem of claim 31, wherein the processing device is further configuredto execute instructions stored in the memory to perform operationscomprising: identifying, for each computing device of the plurality ofcomputing devices, at least one of (i) a respective type of the secondmedia content that can be outputted by the computing device or a (ii) arespective item of the second media content that can be outputted by thecomputing device.
 36. The system of claim 35, wherein the at least oneof the respective type or the respective content item is identifiedbased on at least one respective hardware characteristic of thecomputing device.
 37. The system of claim 35, wherein the at least oneof the respective type or the respective content item is identifiedbased on a respective media application employed by the computing deviceto output the second media content.
 38. The system of claim 31, whereinfirst media content and second media content are supplied by differentproviders.
 39. A system for distributing media content via at least onemedia channel based on associated content provided over another mediachannel, the system comprising: a detection system containing logic toidentify a first media content, the first media content being providedvia a first media channel and containing at least one of video andaudio, and to supply as an output a media identifier corresponding tothe first media content; a secondary media provider containing logic totransmit second media content containing at least one of video and audiovia at least one second media channel different from the first mediachannel; and a notification facilitation system comprising logicresponsive to the media identifier and being communicatively couplablewith the secondary media provider, the notification facilitation systemidentifying, based on the media identifier, a plurality of computingdevices that are arranged to receive second media content that isassociated with the first media content based on the identified firstmedia content, and causing the secondary media provider to transmit thesecond media content toward the computing devices.
 40. The system ofclaim 39, wherein the secondary media provider transmits the secondmedia content to at least one of the plurality of computing devices overa computer network.